1. Technical Field
The present invention relates in general to document presentation by a presentation device, and, in particular, to efficient presentation of document pages containing numerous objects.
2. Description of the Related Art
In the context of printers and other presentation devices, a document is generally defined as a data collection that is logically subdivided into pages. A page may include various types of data, such as text and graphical objects (i.e., line work) and images (i.e., continuous tone (contone)), that are to be presented on one side of a physical sheet, subject to various formatting specifications, such as position, size, margins, etc. When printed, document pages are presented on sheets, which are physical media generally having at least two sides (e.g., a front side and a back side). Each side of a printed sheet may contain one or more pages.
To prepare a document page for presentation, a print processor of a printer must first convert the page from a page description language or vector graphics format into a bit-mapped image indicating a color or gray scale value to present at each pixel of the page. To create the bit-mapped image, the print processor may perform a number of data transformations, such as data compression, color space conversion and halftoning, on the various types of data that the page contains. Following print processing, the page data is printed on a physical sheet by one or more print heads.
For printers to attain higher resolutions and production rates, the data rate to the print head, and specifically, the performance of the print processor, must concomitantly increase. Two of the major barriers to accelerating print processing are the hardware-imposed limitations of the print processor regarding the number of line work and contone objects that can intersect each scan line and the number of priorities available for assignment to overlaid line work and contone objects. Because of these hardware-imposed limitations, the print processor must merge objects via microcode to reduce the number of graphical objects per scan line and/or free priority levels for assignment to additional overlaid graphical objects. For document pages containing a large number of objects, indiscriminate merging of graphical objects to satisfy the hardware-imposed limitations of the print processor consumes a significant amount of processing cycles of the print processor.
Thus, there is a need in the art to provide an improved method, system and program to efficiently process pages containing more than the allowed number of objects per scan line or a larger number of overlaid objects than available priorities.
A system, method and program for merging objects for raster presentation are described. In response to receipt of an input data set including a plurality of objects intended for raster presentation, the system divides the data set into a plurality of scan regions and determines if a predetermined number of objects per scan line set is exceeded by the plurality of objects. In response to a determination that the predetermined number of objects per set of scan lines is exceeded, the system merges only a portion of a first object among the plurality of objects with at least a portion of a second object among the plurality of objects, where the portion of the first object and the portion of the second object are defined by a particular scan region among the plurality of scan regions.